package com.skivingcloud.workflow.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.skivingcloud.admin.sys.entity.User;

import org.activiti.engine.repository.Deployment;
import org.activiti.engine.repository.ProcessDefinition;

import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * <p>
 * 
 * </p>
 *
 * @author skivingcloud
 * @since 2022-03-03
 */
@TableName("wf_depolyment_info")
@ApiModel(value = "DepolymentInfo对象", description = "")
public class DepolymentInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    private String id;

    @ApiModelProperty("模型ID")
    private String modelId;

    @ApiModelProperty("工作流发布ID")
    private String deploymentId;

    private String userId;

    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;

    /**
     * 工作流定义
     */
    @TableField(exist = false)
    private ProcessDefinition processDefinition;
    /**
     * 工作流部署
     */
    @TableField(exist = false)
    private Deployment deployment;
    /**
     * 用户信息
     */
    @TableField(exist = false)
    private User user;
    
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }
    public String getModelId() {
        return modelId;
    }

    public void setModelId(String modelId) {
        this.modelId = modelId;
    }
    public String getDeploymentId() {
        return deploymentId;
    }

    public void setDeploymentId(String deploymentId) {
        this.deploymentId = deploymentId;
    }
    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }
    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    @Override
    public String toString() {
        return "DepolymentInfo{" +
                "id=" + id +
                ", modelId=" + modelId +
                ", deploymentId=" + deploymentId +
                ", userId=" + userId +
                ", createTime=" + createTime +
                "}";
    }

    /**
     * @return the processDefinition
     */
    public ProcessDefinition getProcessDefinition() {
        return processDefinition;
    }

    /**
     * @param processDefinition the processDefinition to set
     */
    public void setProcessDefinition(ProcessDefinition processDefinition) {
        this.processDefinition = processDefinition;
    }

    /**
     * @return the deployment
     */
    public Deployment getDeployment() {
        return deployment;
    }

    /**
     * @param deployment the deployment to set
     */
    public void setDeployment(Deployment deployment) {
        this.deployment = deployment;
    }

    /**
     * @return the user
     */
    public User getUser() {
        return user;
    }

    /**
     * @param user the user to set
     */
    public void setUser(User user) {
        this.user = user;
    }
    
}
